package com.hjm.project.team.detailed.domain;

import com.hjm.framework.aspectj.lang.annotation.Excel;
import com.hjm.framework.web.domain.BaseEntity;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

import java.math.BigDecimal;

/**
 * 引流相关奖励明细对象 team_yl_detailed
 * 
 * @author maker-platform
 * @date 2021-04-15
 */
public class TeamYlDetailed extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Integer id;

    /** 引流团队编号 */
    @Excel(name = "引流团队编号")
    private Integer teamYlId;

    /** 引流团长编号 */
    @Excel(name = "引流团长编号")
    private Integer leaderId;

    /** 引流团长展业端管理编号 */
    @Excel(name = "引流团长展业端管理编号")
    private Integer leaderAgentNum;

    /** 创建日期 yyyy-mm-dd */
    @Excel(name = "创建日期 yyyy-mm-dd")
    private String createDate;

    /** 引流团长展业端管理名称 */
    @Excel(name = "引流团长展业端管理名称")
    private String leaderAgentName;

    /** 奖励类型 14 引流人员奖励政策 16 累计采购奖励政策 17 团交易同比增量奖励 15 引流人员入伙补差（此项为类型1的补充项） */
    @Excel(name = "奖励类型 14 引流人员奖励政策 16 累计采购奖励政策 17 团交易同比增量奖励 15 引流人员入伙补差", readConverterExp = "此=项为类型1的补充项")
    private Integer profitType;

    /** 本次奖励使用的总交易额 */
    @Excel(name = "本次奖励使用的总交易额")
    private String amount;

    /** 本次奖励使用的比率 */
    @Excel(name = "本次奖励使用的比率")
    private String policyRatio;

    /** 本次奖励使用的政策编号 */
    @Excel(name = "本次奖励使用的政策编号")
    private String policyId;

    /** 奖励金额（税前） */
    @Excel(name = "奖励金额", readConverterExp = "税=前")
    private String returnMoney;

    /** 税点 */
    @Excel(name = "税点")
    private BigDecimal taxPoint;

    /** 奖励金额(税后) */
    @Excel(name = "奖励金额(税后)")
    private String returnTaxMoney;

    /** 扣税金额 */
    @Excel(name = "扣税金额")
    private String taxMoney;

    /** 返现日期 yyyy-mm-dd */
    @Excel(name = "返现日期 yyyy-mm-dd")
    private String returnDate;

    /** 结算流水号 */
    @Excel(name = "结算流水号")
    private String settleSerial;

    /** 备注 */
    @Excel(name = "备注")
    private String note;

    /** 引流团员编号 */
    @Excel(name = "引流团员编号")
    private String teamYlTyId;

    /** 引流团员名称 */
    @Excel(name = "引流团员名称")
    private String teamYlTyName;

    /** 引流团长名称 */
    @Excel(name = "引流团长名称")
    private String leaderName;

    /** 引流团员展业端管理编号 */
    @Excel(name = "引流团员展业端管理编号")
    private String teamTyAgentNum;

    /** 引流团员展业端管理名称 */
    @Excel(name = "引流团员展业端管理名称")
    private String teamTyAgentName;

    /** 终端类型 */
    @Excel(name = "终端类型")
    private String posType;

    public void setId(Integer id)
    {
        this.id = id;
    }

    public Integer getId()
    {
        return id;
    }
    public void setTeamYlId(Integer teamYlId)
    {
        this.teamYlId = teamYlId;
    }

    public Integer getTeamYlId()
    {
        return teamYlId;
    }
    public void setLeaderId(Integer leaderId)
    {
        this.leaderId = leaderId;
    }

    public Integer getLeaderId()
    {
        return leaderId;
    }
    public void setLeaderAgentNum(Integer leaderAgentNum)
    {
        this.leaderAgentNum = leaderAgentNum;
    }

    public Integer getLeaderAgentNum()
    {
        return leaderAgentNum;
    }
    public void setCreateDate(String createDate)
    {
        this.createDate = createDate;
    }

    public String getCreateDate()
    {
        return createDate;
    }
    public void setLeaderAgentName(String leaderAgentName)
    {
        this.leaderAgentName = leaderAgentName;
    }

    public String getLeaderAgentName()
    {
        return leaderAgentName;
    }
    public void setProfitType(Integer profitType)
    {
        this.profitType = profitType;
    }

    public Integer getProfitType()
    {
        return profitType;
    }
    public void setAmount(String amount)
    {
        this.amount = amount;
    }

    public String getAmount()
    {
        return amount;
    }
    public void setPolicyRatio(String policyRatio)
    {
        this.policyRatio = policyRatio;
    }

    public String getPolicyRatio()
    {
        return policyRatio;
    }
    public void setPolicyId(String policyId)
    {
        this.policyId = policyId;
    }

    public String getPolicyId()
    {
        return policyId;
    }
    public void setReturnMoney(String returnMoney)
    {
        this.returnMoney = returnMoney;
    }

    public String getReturnMoney()
    {
        return returnMoney;
    }
    public void setTaxPoint(BigDecimal taxPoint)
    {
        this.taxPoint = taxPoint;
    }

    public BigDecimal getTaxPoint()
    {
        return taxPoint;
    }
    public void setReturnTaxMoney(String returnTaxMoney)
    {
        this.returnTaxMoney = returnTaxMoney;
    }

    public String getReturnTaxMoney()
    {
        return returnTaxMoney;
    }
    public void setTaxMoney(String taxMoney)
    {
        this.taxMoney = taxMoney;
    }

    public String getTaxMoney()
    {
        return taxMoney;
    }
    public void setReturnDate(String returnDate)
    {
        this.returnDate = returnDate;
    }

    public String getReturnDate()
    {
        return returnDate;
    }
    public void setSettleSerial(String settleSerial)
    {
        this.settleSerial = settleSerial;
    }

    public String getSettleSerial()
    {
        return settleSerial;
    }
    public void setNote(String note)
    {
        this.note = note;
    }

    public String getNote()
    {
        return note;
    }
    public void setTeamYlTyId(String teamYlTyId)
    {
        this.teamYlTyId = teamYlTyId;
    }

    public String getTeamYlTyId()
    {
        return teamYlTyId;
    }
    public void setTeamYlTyName(String teamYlTyName)
    {
        this.teamYlTyName = teamYlTyName;
    }

    public String getTeamYlTyName()
    {
        return teamYlTyName;
    }
    public void setLeaderName(String leaderName)
    {
        this.leaderName = leaderName;
    }

    public String getLeaderName()
    {
        return leaderName;
    }
    public void setTeamTyAgentNum(String teamTyAgentNum)
    {
        this.teamTyAgentNum = teamTyAgentNum;
    }

    public String getTeamTyAgentNum()
    {
        return teamTyAgentNum;
    }
    public void setTeamTyAgentName(String teamTyAgentName)
    {
        this.teamTyAgentName = teamTyAgentName;
    }

    public String getTeamTyAgentName()
    {
        return teamTyAgentName;
    }
    public void setPosType(String posType)
    {
        this.posType = posType;
    }

    public String getPosType()
    {
        return posType;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("teamYlId", getTeamYlId())
            .append("leaderId", getLeaderId())
            .append("leaderAgentNum", getLeaderAgentNum())
            .append("createDate", getCreateDate())
            .append("leaderAgentName", getLeaderAgentName())
            .append("profitType", getProfitType())
            .append("amount", getAmount())
            .append("policyRatio", getPolicyRatio())
            .append("policyId", getPolicyId())
            .append("returnMoney", getReturnMoney())
            .append("taxPoint", getTaxPoint())
            .append("returnTaxMoney", getReturnTaxMoney())
            .append("taxMoney", getTaxMoney())
            .append("returnDate", getReturnDate())
            .append("settleSerial", getSettleSerial())
            .append("note", getNote())
            .append("teamYlTyId", getTeamYlTyId())
            .append("teamYlTyName", getTeamYlTyName())
            .append("leaderName", getLeaderName())
            .append("teamTyAgentNum", getTeamTyAgentNum())
            .append("teamTyAgentName", getTeamTyAgentName())
            .append("posType", getPosType())
            .toString();
    }
}
